import { Article } from "@/types/article";
import { useNavigate } from "react-router-dom";

/**
 * 跳转文章详情
 * @returns
 */
/**
 * 使用自定义钩子 `useNavArticle` 来获取导航到文章信息页面的功能。
 * 
 * @returns 返回一个对象，包含一个 `goToArticleInfo` 方法，用于导航到指定文章的信息页面。
 */
export default function useNavArticle(): {
    goToArticleInfo: (article: Article) => void;
  }  {
    const navigate = useNavigate(); // 使用 React Router 的 `useNavigate` 钩子来获取导航函数。

    /**
     * 导航到指定文章的信息页面。
     * 
     * @param article - 一个包含文章信息的对象，至少需要包含文章的 `id` 属性。
     */
    const goToArticleInfo = (article: Article) => {
      if (article.id) {
        navigate(`/article?id=${article.id}`) // 当文章对象包含 `id` 时，使用 `navigate` 函数来导航到文章信息页面。
      }
    };
    return {
      goToArticleInfo,
    };
  }
  